<?php
class updateRol extends rol {
	function __construct($id) {
		parent::__construct($id);
	}

	public function update($criterio = null,$arrDatos = null) {
		$arrDatos = $this->data['roles'];
		$arr_keys = array_keys($arrDatos);
		$values = "";
		$query = "UPDATE roles SET ";
		for ($i = 0; $i < count($arr_keys);$i++) {
			$values .=$arr_keys[$i]."=";
			if (is_string($arrDatos[$arr_keys[$i]])) {	$values .= "'".$arrDatos[$arr_keys[$i]]."',"; }
			else { $values .= $arrDatos[$arr_keys[$i]].","; }
		}
		$values = substr($values,0,strlen($values)-1);
		$query .= $values;
		if (!is_null($criterio)) $query .= " WHERE ".$criterio;
		$query .= ";";
		try {
			mysql_query($query);
			if (1000 < mysql_errno() && mysql_errno() < 2056) throw new Exception("Error al intentar actualizar datos en el rol de estudio.");
		} catch (Exception $e) {
			var_dump($query);
			echo mysql_errno(). " : " .mysql_error();
			exit();
		}
		return $query;
	}

	public function getAllFrom($id) {
		$query = "SELECT * FROM roles";
		$query .= " WHERE (id=".$id.") AND (estado>0) AND (fk_origen = ".$this->get('roles','fk_origen').");";
		$result = mysql_query($query) or die(mysql_error());
		$i = 0;
		while ($reg = @mysql_fetch_array($result)) {
			$i++;
			$this->set('roles','nombre',$reg['nombre']);
			$this->set('roles','descripcion',$reg['descripcion']);
			$this->set('roles','permisos',$reg['permisos']);
		}
		return $i;
	}
}
?>